package com.godtree.util;

import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.config.OutputFile;
import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;

import java.util.Collections;

public class CodeGeneratorUtil {

  public static void main(String[] args) {
    FastAutoGenerator.create(
            "jdbc:mysql://47.92.71.239:3306/advertisingrank?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai",
            "rank", "q0iyW8JQcr~4&GsW")
        .globalConfig(builder -> {
          builder.author("lisicheng") // 设置作者
              // .enableSwagger() // 开启 swagger 模式
              .fileOverride() // 覆盖已生成文件
              .outputDir("C://CodeGenerator"); // 指定输出目录
        })
        .packageConfig(builder -> {
          builder.parent("com.godtree") // 设置父包名
              .moduleName("") // 设置父包模块名
              .entity("model")
              .mapper("dao")
              .pathInfo(
                  Collections.singletonMap(OutputFile.xml, "C://CodeGenerator")); // 设置mapperXml生成路径
        })
        .strategyConfig(builder -> {
          builder.addInclude("tb_bazhuanyu_task") // 设置需要生成的表名
              .addTablePrefix("tb_", "c_"); // 设置过滤表前缀
        })
        .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板，默认的是Velocity引擎模板
        .execute();
  }

}
